package com.asm.service.impl;

import com.asm.mapper.SnvCpgAllMapper;
import com.asm.pojo.Analysis1Sig;
import com.asm.pojo.CpgGeneFilt;
import com.asm.pojo.SnvCpgAll;
import com.asm.pojo.tfBindingAlterationByAsmIndexSnvs;
import com.asm.service.SnvCpgAllService;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class SnvCpgAllServiceImpl implements SnvCpgAllService {
    @Autowired
    private SnvCpgAllMapper snvCpgAllMapper;

    public SnvCpgAllServiceImpl() {}

    @Autowired
    private SnvCpgAllServiceImpl(SnvCpgAllMapper snvCpgAllMapper) {
        this.snvCpgAllMapper = snvCpgAllMapper;
    }

    @Override
    public List<SnvCpgAll> selectAllSnvCpgAll(String tissue,String sampleType,String d3d,String atac,String enhancer,String se,String insulator){

        return snvCpgAllMapper.selectAllSnvCpgAll(tissue,sampleType,d3d,atac,enhancer,se,insulator);
    }

    @Override
    public List<SnvCpgAll> selectAllSnvCpgByCpg(String cpgId) {
        return snvCpgAllMapper.selectAllSnvCpgByCpg(cpgId);
    }

    @Override
    public List<SnvCpgAll> selectAnalysis3AsmByRsList(String[] rsList, String tissue, String[] healthStatus) {
        return snvCpgAllMapper.selectAnalysis3AsmByRsList(rsList,tissue,healthStatus);
    }

    @Override
    public List<SnvCpgAll> selectTFbindingByRsList(List<Analysis1Sig> rsList) {
        return snvCpgAllMapper.selectTFbindingByRsList(rsList);
    }

    @Override
    public List<SnvCpgAll> getDetailByASMid(String asmid) {
        return snvCpgAllMapper.getDetailByASMid(asmid);
    }

    @Override
    public List<SnvCpgAll> selectAnalysis3GeneByRsList(String[] rsList) {
        return snvCpgAllMapper.selectAnalysis3GeneByRsList(rsList);
    }

    @Override
    public List<SnvCpgAll> selectAllSnvCpgAllBySearch(String tissue, String sampleType, String chr, String search) {
        return snvCpgAllMapper.selectAllSnvCpgAllBySearch(tissue,sampleType,chr,search);
    }

    @Override
    public List<SnvCpgAll> selectTFbindingByRsListBySearch(List<Analysis1Sig> rsList, String search) {
        return snvCpgAllMapper.selectTFbindingByRsListBySearch(rsList,search);
    }

    @Override
    public List<SnvCpgAll> selectHomeSNVFromAllSnvCpgAllBySearch(String search) {
        return snvCpgAllMapper.selectHomeSNVFromAllSnvCpgAllBySearch(search);
    }

    @Override
    public List<SnvCpgAll> selectHomeSNVFromAllSnvCpgAllByRsList(List<? extends Object> rsList) {
        return snvCpgAllMapper.selectHomeSNVFromAllSnvCpgAllByRsList(rsList);
    }
}
